'use strict';

// （1.获取当前日期的格式化数据
const mysqlDateType = (isvalues=false)=>{
    // return (new Date()).toLocaleString()// 下午会出现异常.replace(/[\上\午\下\午]+?/gi,'')
    if(isvalues){
      // 插入数据的日期格式  
       return DateFormat(new Date(),'YYYY-MM-DD HH:mm:ss');   
    }else{ 
        return 'current_timestamp()';                     // 获取当前日期的SQL函数
    }
}
// （2.格式化日期数据
const DateFormat = (date,fmt)=>{
    // var dateTime = Date.now();//获取日期时间的date类型
    // dateTime = dateTime.setDate(dateTime.getDate()-1);//传入时间的前一天
    // var time = new Date(dateTime).Format("yyyy-MM-dd HH:mm:ss");//按照格式编译转换
    // yyyy MM dd  HH mm ss
    var o = {
        "M+": date.getMonth() + 1, // 月份
        "D+": date.getDate(), // 日
        "H+": date.getHours(), // 小时
        "m+": date.getMinutes(), // 分
        "s+": date.getSeconds(), // 秒
        "q+": Math.floor((date.getMonth() + 3) / 3), // 季度
        "S": date.getMilliseconds() // 毫秒
    };
    if (/(Y+)/.test(fmt))
        fmt = fmt.replace(RegExp.$1, (date.getFullYear() + "").substr(4 - RegExp.$1.length));
    for (var k in o)
        if (new RegExp("(" + k + ")").test(fmt)) fmt = fmt.replace(RegExp.$1, (RegExp.$1.length == 1) ? (o[k]) : (("00" + o[k]).substr(("" + o[k]).length)));
    return fmt;
}
// （3.时间计时器
const changeIntervalTime = ()=>{
    const today = new Date();
    const nowDate = today.toLocaleDateString().replace(/[\/]/gi,"-")
    let nowTime = today.toLocaleTimeString().slice(4)
    let pre_data_prefix =  today.toLocaleTimeString().slice(0,2);
    let pre_data = parseInt(today.toLocaleTimeString().match(/(\d+):/gi));
    if(pre_data_prefix == "下午"){
        nowTime = (pre_data + 12) +":"+ nowTime;
    }else{
        if(pre_data < 10)
            nowTime = "0"+pre_data  +":" + nowTime;
        else
            nowTime = pre_data  +":" + nowTime;
    }
    return nowDate  + " " + nowTime
}


  
//
// /** 获取元组格式的字符串，用于mysql的sql 添加语句
//  *
//  * @param {*} option 操作对象的keys 或者 values
//  * @param {*} new_obj  操作的对象
//  * @returns
//  */
// function ObjectTupleString(option,new_obj){
//     let use_obj = null
//     let res = ""
//     if(option=="keys" || option == 'key'){
//         use_obj = ObjectKeys(new_obj)
//         res = JSON.stringify(use_obj).replace(/[\'|\"|\[|\]]+?/gi,'')
//     }else{
//         use_obj = ObjectValues(new_obj)
//         res = JSON.stringify(use_obj).replace(/[\[|\]]+?/gi,'')
//     }
//     return res
// }
//
// /** 获取特定单一的id
//  *
//  * @param {*} prefix  id前缀
//  * @param {*} mid_len 中间字母长度
//  * @param {*} post_len 尾部数字长度
//  * @returns
//  */
// function getSingleId(prefix, mid_len, post_len){
//     // prefix + 两个字母 + 6个数字
//     if(post_len<0 || mid_len <0 || mid_len>8 || post_len>8 || prefix + mid_len + post_len >20)
//         return null;
//     const time_shaft = new Date().getTime().toString()
//     const postfix = time_shaft.slice(time_shaft.length-post_len);
//     let midfix = ""
//     while(mid_len--){
//         var mid_alpha = Math.floor(Math.random()*26)
//         var t_alpha = Math.floor(Math.random()*2) ? 65 : 97
//         midfix += String.fromCharCode(t_alpha + mid_alpha)
//     }
//     return prefix + midfix + postfix;
// }

module.exports = {
    mysqlDateType, DateFormat,
    changeIntervalTime
}

